<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    var p = new Promise(function(resolve,reject) {
        // resolve(111);
        // reject(222);        // 以抛错形式改变状态传递数据
        // throw 666;          // 自己抛错
        console.log(hello);    // 语法错误
    });
    console.log(p);

// Promise 实例的方法 (p)   then  正确时执行函数
    // then(callback1,callback2)    指定promise实例的状态改变时执行的内容

        // callback1 
            // 当promise实例的状态  由进行中(pending) 改为 已成功(fullilled)时执行的回调函数

        // callback2 
            // (1)    当promise实例的状态  由进行中(pending) 改为 已失败(rejected)时执行的回调函数
            // (2)    也可以接收代码执行过程中的语法错误/手动抛错throw

    // p.then(function(){}, function(){})


    p.then(
        function(rand){
           console.log("resolve",rand);
        },
        function(rand){
            console.log("reject",rand);
        }
    )




</script>
</html>